Learn R Programming

adegenet (version 1.4-2)

Inbreeding estimation: Likelihood-based estimation of inbreeding

Description

The function inbreeding estimates the inbreeding coefficient of an individuals (F) by computing its likelihood function. It can return either the density of probability of F, or a sample of F values from this distribution. This operation is performed for all the individuals of a genind object. Any ploidy greater than 1 is acceptable.

Usage

inbreeding(x, pop = NULL, truenames = TRUE, res.type = c("sample","function"),
           N = 200, M = N * 10)

Arguments

x
an object of class genind.
pop
a factor giving the 'population' of each individual. If NULL, pop is seeked from pop(x). Note that the term population refers in fact to any grouping of individuals'.
truenames
a logical indicating whether true names should be used (TRUE, default) instead of generic labels (FALSE); used if res.type is "matrix".
res.type
a character string matching "sample" or "function", specifying whether the output should be a function giving the density of probability of F values ("function") or a sample of F values taken from this distribution ("sample", default).
N
an integer indicating the size of the sample to be taken from the distribution of F values.
M
an integer indicating the number of different F values to be used to generate the sample. Values larger than N are recommended to avoid poor sampling of the distribution.

Value

  • A named list with one component for each individual, each of which is a function or a vector of sampled F values (see res.type argument).

encoding

UTF-8

Details

Let $F$ denote the inbreeding coefficient, defined as the probability for an individual to inherit two identical alleles from a single ancestor.

Let $p_i$ refer to the frequency of allele $i$ in the population. Let $h$ be an variable which equates 1 if the individual is homozygote, and 0 otherwise. For one locus, the probability of being homozygote is computed as:

$F + (1-F) \sum_i p_i^2$

The probability of being heterozygote is: $1 - (F + (1-F) \sum_i p_i^2)$

The likelihood of a genotype is defined as the probability of being the observed state (homozygote or heterozygote). In the case of multilocus genotypes, log-likelihood are summed over the loci.

See Also

Hs: computation of expected heterozygosity.

Examples

Run this code
## cattle breed microsatellite data
data(microbov)

## isolate Lagunaire breed
lagun <- seppop(microbov)$Lagunaire

## estimate inbreeding - return sample of F values
Fsamp <- inbreeding(lagun, N=30)

## plot the first 10 results
invisible(sapply(Fsamp[1:10], function(e) plot(density(e), xlab="F",
xlim=c(0,1), main="Density of the sampled F values")))

## compute means for all individuals
Fmean=sapply(Fsamp, mean)
hist(Fmean, col="orange", xlab="mean value of F",
main="Distribution of mean F across individuals")

## estimate inbreeding - return proba density functions
Fdens <- inbreeding(lagun, res.type="function")

## view function for the first individual
Fdens[[1]]

## plot the first 10 functions
invisible(sapply(Fdens[1:10], plot, ylab="Density",
main="Density of probability of F values"))

Run the code above in your browser using DataLab